//
//  SIErrorCode.h
//  SenseidIdsSDK
//
//  Created by 吴畏 on 2024/4/3.
//

#ifndef SIErrorCode_h
#define SIErrorCode_h

#import <Foundation/Foundation.h>

typedef NS_ENUM(int, SIErrorCode) {
  SI_OK = 0,
  SI_E_HANDLE = -1,                                 // 句柄错误
  SI_E_INVALID_ARGUMENT = -2,                       // 参数错误
  SI_E_UNSAFE_ENVIRONMENT = -3,                     // 不安全环境
  SI_E_CONNECTION_FAIL = -65537,                    // 连接失败
  SI_E_CONNECTION_AUTH_INVALID =  -65538,           // 连接鉴权失败
  SI_E_DETECT_EXCEPTION = -131073,                  // 检测发生异常
  SI_E_DETECT_TIMEOUT = -131074,                    // 检测超时
  SI_E_DETECT_UNSUPPORTED = -131075,                // 检测失败
  SI_E_DETECT_NO_FACE = -131076,                    // 没检测到人脸
  SI_E_DETECT_MULTIPLE_FACES = -131077,             // 检测到多张人脸
  SI_E_DETECT_FACE_NOT_IN_ROI = -131078,            // 人脸不在检测框中
  SI_E_DETECT_FACE_TOO_SMALL = -131079,             // 人脸太小
  SI_E_DETECT_FACE_LOW_QUALITY = -131080,           // 人脸质量太低
  SI_E_DETECT_FACE_OCCLUSION = -131081,             // 人脸被遮挡
  SI_E_DETECT_FACE_NOT_FORWARD = -131082,           // 人脸朝向不向前
  SI_E_DETECT_NO_ID_CARD = -131083,                 // 无身份证检出
  SI_E_DETECT_MULTIPLE_ID_CARDS = -131084,          // 多个身份证检出
  SI_E_DETECT_ID_CARD_NOT_IN_ROI = -131085,         // 身份证偏离检测 ROI 框
  SI_E_DETECT_ID_CARD_TOO_SMALL = -131086,          // 身份证太小, 距离镜头太远
  SI_E_DETECT_ID_CARD_NOT_ALIGNED = -131087,        // 身份证未对齐
  SI_E_DETECT_ID_CARD_NOT_REQUIRED_SIDE = -131088,  // 身份证非指定面
  SI_E_DETECT_ID_CARD_NOT_ORIGINAL = -131089,       // 身份证非原件
  SI_E_DETECT_ID_CARD_OCCLUSION = -131090,          // 身份证遮挡
  SI_E_DETECT_ID_CARD_BRIGHT = -131091,             // 身份证强光
  SI_E_DETECT_ID_CARD_DARK = -131092,               // 身份证弱光
  SI_E_DETECT_ID_CARD_BLUR = -131093,               // 身份证模糊
  SI_E_DETECT_ID_CARD_CROPPED = -131094,            // 身份证被剪裁，不完整
  SI_E_DETECT_ID_CARD_FIELD_INVALID = -131095,      // 身份证存在字段非法
  SI_E_DETECT_ID_CARD_TURN_SIDE = -131096,          // 身份证需要翻面
  SI_E_DETECT_NO_BANK_CARD_DETECTED = -131097,      // 无银行卡检出
  SI_E_DETECT_MULTIPLE_BANK_CARDS = -131098,        // 多个银行卡检出
  SI_E_DETECT_BANK_CARD_NOT_IN_ROI = -131099,       // 银行卡偏离检测 ROI 框
  SI_E_DETECT_BANK_CARD_TOO_SMALL = -131100,        // 银行卡太小, 距离镜头太远
  SI_E_DETECT_BANK_CARD_FIELD_INVALID = -131101,    // 银行卡存在字段非法
};

#endif /* SIErrorCode_h */
